Object 對象
要創建一个新的對象 object,使用 new 語句實例化一个類:
<?php
class SayHi
{
function do_sayhi()
{
echo "Hello.";
}
}
$bar = new foo;
$bar->do_sayhi(); // Hello
?>
如果將Object轉換成Object將不會有任何變化,如果其它任何類型的值被轉換成對象,將會創建一个内置類 stdClass 的實例。如果该值为 null,則新的實例為空。
array 轉換成 object 將使Key值成為屬性名並具有相對應的值,參考以下範例
<?php
$obj = (object) array('1' => 'foo');
var_dump(isset($obj->{'1'})); // PHP 7.2.0 後輸出 'bool(true)',之前版本會輸出 'bool(false)'
var_dump(key($obj)); // PHP 7.2.0 後輸出 'string(1) "1"',之前版本輸出 'int(1)'
?>
對於其他值,會包含進成員變量名 scalar。
<?php
$obj = (object) 'hello';
echo $obj->scalar; // outputs 'hello'
?>
Null類型
特殊的 null 值表示一个變數没有值。NULL 類型唯一可能的值就是 null。
在下列情况下一个變數被认为是 null:
被賦值为 null。
尚未被賦值。
被 unset()。
null 類型只有一个值,就是不區分大小寫的常量 null。
<?php
$var = NULL;
?>
資料來源:https://www.php.net/manual/zh/